package koala.kuangjiademo.data;

import com.google.gson.annotations.SerializedName;

import java.io.Serializable;
import java.util.List;

public class OrderDetail implements Serializable {
    //    public UNKNOWN createdate;
//    public UNKNOWN createby;
//    public UNKNOWN updatedate;
//    public UNKNOWN updateby;
    public int corpid;
    public String declaretype;
    public String declareby;
    //    public UNKNOWN declaredate;
    public int salerid;
    public String salername;
    public String salermobile;
    public int vehicleid;
    //    public UNKNOWN carstatus;
//    public UNKNOWN servicestartdate;
//    public UNKNOWN serviceenddate;
    String attentionmatters;

    public String getMessage() {
        return installaddresscode + installaddress + attentionmatters;
    }

    public int installapplyinsu;
    public int installapplymorn;
    //    public UNKNOWN installactualwired;
//    public UNKNOWN installactualwireless;
//    public UNKNOWN installapplydate;
//    public UNKNOWN installactualdate;
    public String installaddresscode;
    String installaddress;
    public int installgroupid;
    public int installby;
    //    public UNKNOWN installpic1;
//    public UNKNOWN installpic2;
//    public UNKNOWN installpic3;
//    public UNKNOWN installpic4;
//    public UNKNOWN installpic5;
//    public UNKNOWN assignby;
//    public UNKNOWN assigndate;
    public String clerkremarks;
    public int approvestatus;
    //    public UNKNOWN approvemsg;
//    public UNKNOWN status;
//    public UNKNOWN aftersalerid;
//    public UNKNOWN aftersalerdate;
//    public UNKNOWN insurancespecid;
//    public UNKNOWN insurancespecdate;
//    public UNKNOWN isdelete;
//    public UNKNOWN act_id;
//    public UNKNOWN act_status;
//    public UNKNOWN businessKey;
//    public UNKNOWN taskId;
    public CorporateInfo corporateInfo;
    public DeclarEmployee declarEmployee;
    //    public UNKNOWN salerEmployeeInfo;
    public VehicleInfo vehicleInfo;
    public OwnerInfo ownerInfo;
    public InstallGroupInfo installGroupInfo;
    public InstallEmployee installEmployee;
    //    public UNKNOWN assignEmployee;
//    public UNKNOWN afterSaleEmployee;
//    public UNKNOWN insuranceEmployee;
    public List<?> installDetails;//FIXME
    //    public UNKNOWN insuranceInfo;
//    public UNKNOWN remark;
//    public UNKNOWN result;
    public int id;

    public class VehicleInfo implements Serializable {
        //        public UNKNOWN vehicletype;
//        public UNKNOWN color;
        public int corpid;
        //        public UNKNOWN act_id;
//        public UNKNOWN createdate;
//        public UNKNOWN enginenum;
//        public UNKNOWN createby;
//        public UNKNOWN updatedate;
        public int price;
        public String model;
        public String vin;
        public int id;
        public String value;
        //        public UNKNOWN loanenddate;
//        public UNKNOWN tbc3;
//        public UNKNOWN tbc1;
//        public UNKNOWN tbc2;
        public int ownerid;
        //        public UNKNOWN receivingbankid;
//        public UNKNOWN act_status;
        public int generalproductcount;
        //        public UNKNOWN repaymentstatus;
//        public UNKNOWN firstregisterdate;
//        public UNKNOWN updateby;
        public String licenseplatenum;
        public int yearsofservice;
        public String isdelete;
        public String hastheftinsurance;
    }

    public class CorporateInfo implements Serializable {
        public String corptype;
        public String corpshortname;
        public String corpname;
        @SerializedName("tel1")
        String mobile;
        public int id;
        public String corpcode;
        public String parentcorpcode;

        public String getMobile() {
            return mobile;
        }
    }

    public class InstallGroupInfo implements Serializable {
        public String createby;
        public String grouptype;
        //        public UNKNOWN updatedate;
//        public UNKNOWN updateby;
//        public UNKNOWN createdate;
        public String groupleaderid;
        public boolean isdelete;
        public int id;
        public String groupname;
        public String groupcode;
    }

    public class InstallEmployee implements Serializable {
        //        public UNKNOWN iscompanyleader;
//        public UNKNOWN gender;
//        public UNKNOWN isgroupleader;
//        public UNKNOWN act_id;
//        public UNKNOWN deptid;
//        public UNKNOWN createdate;
        public int userid;
        //        public UNKNOWN createby;
//        public UNKNOWN updatedate;
//        public UNKNOWN positionid;
//        public UNKNOWN employeecode;
//        public UNKNOWN superiorcode;
//        public UNKNOWN wechatid;
//        public UNKNOWN tel;
        public String employeenamepy;
        public int id;
        //        public UNKNOWN fax;
//        public UNKNOWN email;
//        public UNKNOWN showorder;
//        public UNKNOWN isdeptleader;
//        public UNKNOWN dateofbirth;
//        public UNKNOWN employeetype;
//        public UNKNOWN emplevel;
//        public UNKNOWN mobile;
//        public UNKNOWN act_status;
//        public UNKNOWN isenable;
//        public UNKNOWN oauserid;
//        public UNKNOWN updateby;
        public String standardheadiconpath;
        public String headiconpath;
        public String employeename;
    }

    public class OwnerInfo implements Serializable {
        //        public UNKNOWN addresshome;
//        public UNKNOWN postcodehome;
//        public UNKNOWN gender;
//        public UNKNOWN accountnum;
//        public UNKNOWN mobile;
//        public UNKNOWN createdate;
//        public UNKNOWN type;
//        public UNKNOWN parentid;
//        public UNKNOWN addressoffice;
//        public UNKNOWN postcodeoffice;
//        public UNKNOWN createby;
//        public UNKNOWN updatedate;
//        public UNKNOWN maritalstatus;
//        public UNKNOWN updateby;
        public String idcard;
        public String name;
        public String tel;
        //        public UNKNOWN isdelete;
        public int id;
//        public UNKNOWN value;
//        public UNKNOWN email;
    }

    public class DeclarEmployee implements Serializable {
        //        public UNKNOWN iscompanyleader;
        public String gender;
        //        public UNKNOWN isgroupleader;
//        public UNKNOWN act_id;
        public int deptid;
        //        public UNKNOWN createdate;
        public int userid;
        //        public UNKNOWN createby;
//        public UNKNOWN updatedate;
        public int positionid;
        public String employeecode;
        public String superiorcode;
        //        public UNKNOWN wechatid;
//        public UNKNOWN tel;
        public String employeenamepy;
        public int id;
        //        public UNKNOWN fax;
        public String email;
        public int showorder;
        //        public UNKNOWN isdeptleader;
//        public UNKNOWN dateofbirth;
        public String employeetype;
        public String emplevel;
        public String mobile;
        //        public UNKNOWN act_status;
        public String isenable;
        //        public UNKNOWN oauserid;
//        public UNKNOWN updateby;
//        public UNKNOWN standardheadiconpath;
//        public UNKNOWN headiconpath;
        public String employeename;
    }

    public static class Response extends ResponsePacket<OrderDetail> {

    }
}
